home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / lib / tex / inputs / psfig.pro < prev    next >
Text File  |  1991-06-07  |  2KB  |  92 lines

  1. %!
  2. % Psfig/TeX Release 1.2
  3. % dvips version
  4. %
  5. % All software, documentation, and related files in this distribution of
  6. % psfig/tex are Copyright 1987, 1988 Trevor J. Darrell
  7. %
  8. % Permission is granted for use and non-profit distribution of psfig/tex 
  9. % providing that this notice be clearly maintained, but the right to
  10. % distribute any portion of psfig/tex for profit or as part of any commercial
  11. % product is specifically reserved for the author.
  12. %
  13. %
  14. % $Header: figtex.pro,v 1.5 87/07/24 20:14:50 trevor Exp $
  15. % $Source: $
  16. %
  17. /TeXscale { 65536 div } def
  18.  
  19. /DocumentInitState [ matrix currentmatrix currentlinewidth currentlinecap
  20. currentlinejoin currentdash currentgray currentmiterlimit ] cvx def
  21.  
  22. /startTexFig {
  23. % usage :  x y bb-llx bb-lly bb-urx bb-ury startFig
  24.     /SavedState save def
  25.     userdict maxlength dict begin
  26.     currentpoint transform
  27.  
  28.     DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap
  29.         setlinewidth setmatrix
  30.  
  31.     itransform moveto
  32.  
  33.     /ury exch TeXscale def
  34.     /urx exch TeXscale def
  35.     /lly exch TeXscale def
  36.     /llx exch TeXscale def
  37.     /y exch TeXscale def
  38.     /x exch TeXscale def
  39.     
  40.     currentpoint /cy exch def /cx exch def
  41.  
  42.     /sx x urx llx sub div def     % scaling for x
  43.     /sy y ury lly sub div def    % scaling for y
  44.  
  45.     sx sy scale            % scale by (sx,sy)
  46.  
  47.     cx sx div llx sub
  48.     cy sy div ury sub translate
  49.     
  50.     /DefFigCTM matrix currentmatrix def
  51.  
  52.     /initmatrix {
  53.         DefFigCTM setmatrix
  54.     } def
  55.     /defaultmatrix {
  56.         DefFigCTM exch copy
  57.     } def
  58.  
  59.     /initgraphics {
  60.         DocumentInitState setmiterlimit setgray setdash 
  61.             setlinejoin setlinecap setlinewidth setmatrix
  62.         DefFigCTM setmatrix
  63.     } def
  64.  
  65.     /showpage {
  66.         initgraphics
  67.     } def
  68. % /erasepage and /copypage added for MatLab support (tli)
  69.      /erasepage {
  70.          initgraphics
  71.      } def
  72.      /copypage {} def
  73.  
  74. } def
  75. % Args are llx lly urx ury (in figure coordinates)
  76. /clipFig {
  77.     currentpoint 6 2 roll
  78.     newpath 4 copy
  79.     4 2 roll moveto
  80.     6 -1 roll exch lineto
  81.     exch lineto
  82.     exch lineto
  83.     closepath clip
  84.     newpath
  85.     moveto
  86. } def
  87. % doclip, if called, will always be just after a `startfig'
  88. /doclip { llx lly urx ury clipFig } def
  89. /endTexFig {
  90.     end SavedState restore
  91. } def
  92.